Xen_version hypercalls takes two args, not one.
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Mon, 12 Sep 2005 12:29:40 +0000 (12:29 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Mon, 12 Sep 2005 12:29:40 +0000 (12:29 +0000)
Signed-off-by: Ian Pratt <ian@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
extras/mini-os/include/hypervisor.h
linux-2.6-xen-sparse/arch/xen/kernel/evtchn.c
linux-2.6-xen-sparse/include/asm-xen/asm-i386/hypercall.h
linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/hypercall.h
xen/arch/x86/x86_32/entry.S
xen/arch/x86/x86_64/entry.S

index ed3cab6fe635b241538e1f5014d3588d4ff57d06..ee96d30bb0594206fc0792db72f2bf7ab3172737 100644 (file)
@@ -414,15 +414,15 @@ HYPERVISOR_event_channel_op(
 
 static inline int
 HYPERVISOR_xen_version(
-    int cmd)
+    int cmd, void *arg)
 {
     int ret;
-    unsigned long ignore;
+    unsigned long ignore, ign2;
 
     __asm__ __volatile__ (
         TRAP_INSTR
-        : "=a" (ret), "=b" (ignore)
-       : "0" (__HYPERVISOR_xen_version), "1" (cmd)
+        : "=a" (ret), "=b" (ignore), "=c" (ign2)
+       : "0" (__HYPERVISOR_xen_version), "1" (cmd), "2" (arg)
        : "memory" );
 
     return ret;
index 6698c37603ada1e51a4e9833c0e723e9b597c373..6cb42af88a1847164508d24e93ed3bb95187102f 100644 (file)
@@ -123,7 +123,7 @@ extern asmlinkage unsigned int do_IRQ(struct pt_regs *regs);
  */
 void force_evtchn_callback(void)
 {
-    (void)HYPERVISOR_xen_version(0);
+    (void)HYPERVISOR_xen_version(0, NULL);
 }
 EXPORT_SYMBOL(force_evtchn_callback);
 
index 948e0b0892e0506c0d098de2e78e7582e3674d9b..6bdcb310ff13eaffd75937c8870c4c5a25d1fdc4 100644 (file)
@@ -270,9 +270,9 @@ HYPERVISOR_event_channel_op(
 
 static inline int
 HYPERVISOR_xen_version(
-       int cmd)
+       int cmd, void *arg)
 {
-       return _hypercall1(int, xen_version, cmd);
+       return _hypercall2(int, xen_version, cmd, arg);
 }
 
 static inline int
index 468b7c671ae16543d89bbe3a55ccfb70fc14e80b..11e869b730f4ec1786f8d4ca119745c41cadc167 100644 (file)
@@ -260,9 +260,9 @@ HYPERVISOR_event_channel_op(
 
 static inline int
 HYPERVISOR_xen_version(
-       int cmd)
+       int cmd, void *arg)
 {
-       return _hypercall1(int, xen_version, cmd);
+       return _hypercall2(int, xen_version, cmd, arg);
 }
 
 static inline int
index bb19f302b8e169d0dda13d3ad1955aa6b1ac6f59..1fee8f010b1e5b8498857a83bfdea713a9f4559e 100644 (file)
@@ -834,7 +834,7 @@ ENTRY(hypercall_args_table)
         .byte 4 /* do_update_va_mapping */
         .byte 2 /* do_set_timer_op      */  /* 15 */
         .byte 1 /* do_event_channel_op  */
-        .byte 1 /* do_xen_version       */
+        .byte 2 /* do_xen_version       */
         .byte 3 /* do_console_io        */
         .byte 1 /* do_physdev_op        */
         .byte 3 /* do_grant_table_op    */  /* 20 */
index 6d8fb1bac9fc3a6b42282edd4021346fa4e85d36..a696b65dfe6ef44502c9d9fb716d9f7ac014494c 100644 (file)
@@ -655,7 +655,7 @@ ENTRY(hypercall_args_table)
         .byte 3 /* do_update_va_mapping */
         .byte 1 /* do_set_timer_op      */  /* 15 */
         .byte 1 /* do_event_channel_op  */
-        .byte 1 /* do_xen_version       */
+        .byte 2 /* do_xen_version       */
         .byte 3 /* do_console_io        */
         .byte 1 /* do_physdev_op        */
         .byte 3 /* do_grant_table_op    */  /* 20 */